﻿using MengLin.OOP.DesignPattern.State.OrderManager.Entity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MengLin.OOP.DesignPattern.State.RoomManagerSys.Interface
{
    /// <summary>
    /// 抽象的订单状态
    /// </summary>
    public abstract class AbstractOrderState
    {
        /// <summary>
        /// 得到订单的状态
        /// </summary>
        /// <returns></returns>
        public abstract string GetState();

        /// <summary>
        /// 发货
        /// </summary>
        /// <param name="room"></param>
        public abstract void SendGoods(Order order);

        /// <summary>
        /// 付款
        /// </summary>
        /// <param name="room"></param>
        public abstract void Payment(Order order);

        /// <summary>
        /// 收货
        /// </summary>
        /// <param name="room"></param>
        public abstract void ReceiveGoods(Order order);
    }
}
